package com.sxj.corejava.code13_线程;


public class Test01_继承Thread类 {

    /**
     * JVM在启动时会自动创建一个主线程，用来执行main方法
     */
    public static void main(String[] args) {
        SomeThread t1 = new SomeThread("t1");
        SomeThread t2 = new SomeThread("t2");

        // 不能通过调用run方法的方式执行线程
//        t1.run();
//        t2.run();

        // 启动线程,自动执行run方法
        // 此时的线程并不一定立刻执行，获取需要到对应CPU时间片才会执行
        // 多个线程之间争抢CPU时间片，谁抢到谁执行
        t1.start();
        t2.start();
    }

}

class SomeThread extends Thread {
    private String name;

    public SomeThread(String name) {
        this.name = name;
    }

    /**
     * 重写run方法,实现线程中需要执行的代码
     */
    @Override
    public void run() {
        for (int i = 0; i < 1000; i++) {
//            System.out.println(name + "线程正在打印数字:" + i);
            // 也可以获取线程的默认名
            System.out.println(getName() + "线程正在打印数字:" + i);
        }
    }
}
